package com.csx.governance.traffic.condition.constant;

/**
 * 表达式部件类型
 * @author cuisongxu
 * @date 2023/2/25 14:25
 */
public enum ExpressionComponentType {

    /**
     * 逻辑类型
     */
    LOGIC("logic", 1),

    /**
     * 普通表达式
     */
    EXP("exp", 3);

    private final String typeName;

    private final int requiredParamsNumber;

    ExpressionComponentType(String typeName, int requiredParamsNumber) {
        this.typeName = typeName;
        this.requiredParamsNumber = requiredParamsNumber;
    }

    public int requiredParamsNumber() {
        return requiredParamsNumber;
    }

    public String typeName() {
        return typeName;
    }
}
